<?php
/* -------------------------------------------------------------------------------------
* 	ID:						$Id: ot_amount.php 473 2014-01-30 16:00:59Z phone.mueller@googlemail.com $
* 	Letzter Stand:			$Revision: 473 $
* 	zuletzt geaendert von:	$Author: siekiera $
* 	Datum:					$Date: 2014-01-30 16:00:59 +0000 (Thu, 30 Jan 2014) $
*
* 	SEO:mercari by Siekiera Media
* 	http://www.seo-mercari.de
*
* 	Copyright (c) since 2011 SEO:mercari
* --------------------------------------------------------------------------------------
* 	based on:
* 	(c) 2000-2001 The Exchange Project  (earlier name of osCommerce)
* 	(c) 2002-2003 osCommerce - www.oscommerce.com
* 	(c) 2003     nextcommerce - www.nextcommerce.org
* 	(c) 2005     xt:Commerce - www.xt-commerce.com
*
* 	Released under the GNU General Public License
* ----------------------------------------------------------------------------------- */

class ot_amount {
	var $title, $output;

	function __construct() {
		global $db;
		$this->code = 'ot_amount';
		$this->title = MODULE_ORDER_TOTAL_AMOUNT_TITLE;
		$this->description = MODULE_ORDER_TOTAL_AMOUNT_DESCRIPTION;
		$this->enabled = ((MODULE_ORDER_TOTAL_AMOUNT_STATUS == 'true') ? true : false);
		$this->sort_order = MODULE_ORDER_TOTAL_AMOUNT_SORT_ORDER;
		$this->output = array();
		$this->db = $db;
	}

  function process($values_from_cart = false, &$order_total_array) {
		global $order, $price;
    $order_total_base = $order_total_array['all'];

    $order_total_base['code'] = $this->code;
    $order_total_base['title'] = $this->title;
    $order_total_base['sort_order'] = $this->sort_order;
    $order_total_base['value'] = $order_total_base['brutto'];
    $order_total_base['text'] = $price->format($order_total_base['value'], true);
    
    if(isset($order_total_array['ot_payment']))
			$order_total_array[$this->code] = $order_total_base;
		
		if ($_SESSION['customers_status']['customers_status_show_price_tax'] != 0) {

        $this->output[] = array('title' => $this->title . ':',
                                'text' => $price->format($order->info['total'],true),
                                'value' => $price->format($order->info['total'],false));
      }

      if ($_SESSION['customers_status']['customers_status_show_price_tax'] == 0 
				&& $_SESSION['customers_status']['customers_status_add_tax_ot'] == 1) {
        $this->output[] = array('title' => MODULE_ORDER_TOTAL_TOTAL_TITLE_NO_TAX_BRUTTO . ':',                          
                                'text' => $price->format($order->info['tax']+$order->info['total'],true),
                                'value' => $price->format($order->info['total']+$order->info['tax'],false));
      }
      if ($_SESSION['customers_status']['customers_status_show_price_tax'] == 0 
				&& $_SESSION['customers_status']['customers_status_add_tax_ot'] == 0) {
        $this->output[] = array('title' => MODULE_ORDER_TOTAL_TOTAL_TITLE_NO_TAX . ':',
                                'text' => $price->format($order->info['total'],true),
                                'value' => $price->format($order->info['total'], false));
      }
    }

    function check() {
      if (!isset($this->_check)) {
        $check = $this->db->db_query("SELECT configuration_value from " . TABLE_CONFIGURATION . " WHERE configuration_key = 'MODULE_ORDER_TOTAL_AMOUNT_STATUS'");
        $this->_check = $check->_numOfRows;
      }

      return $this->_check;
    }

    function keys() {
      return array('MODULE_ORDER_TOTAL_AMOUNT_STATUS', 'MODULE_ORDER_TOTAL_AMOUNT_SORT_ORDER');
    }

    function install() {
      $this->db->db_query("INSERT INTO " . TABLE_CONFIGURATION . " (configuration_key, configuration_value,configuration_group_id, sort_order, set_function, date_added) VALUES ('MODULE_ORDER_TOTAL_AMOUNT_STATUS', 'true', '6', '1','cfg_select_option(array(\'true\', \'false\'), ', now())");
      $this->db->db_query("INSERT INTO " . TABLE_CONFIGURATION . " (configuration_key, configuration_value,configuration_group_id, sort_order, date_added) VALUES ('MODULE_ORDER_TOTAL_AMOUNT_SORT_ORDER', '6','6', '2', now())");
    }

    function remove() {
      $this->db->db_query("DELETE FROM " . TABLE_CONFIGURATION . " WHERE configuration_key in ('" . implode("', '", $this->keys()) . "')");
    }
  }
?>